package com.wyl.auth.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
* @Description 用户登录日志表
* @Author WuYiLong
* @Date 2025-04-13
*/
@Data
@ApiModel(value = "UserLoginLogVo对象", description = "用户登录日志表")
public class UserLoginLogVo implements Serializable {
private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    private Long id;

    @ApiModelProperty(value = "用户名")
    private String username;

    @ApiModelProperty(value = "登录时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime loginTime;

    @ApiModelProperty(value = "登录ip")
    private String ipAddress;

    @ApiModelProperty(value = "浏览器/设备信息")
    private String userAgent;

    @ApiModelProperty(value = "0=失败, 1=成功")
    private Integer loginResult;

    @ApiModelProperty(value = "失败原因")
    private String failureReason;

    @ApiModelProperty(value = "设备类型")
    private String deviceType;

    @ApiModelProperty(value = "地理位置")
    private String location;

    @ApiModelProperty(value = "会话ID")
    private String sessionId;

    @ApiModelProperty(value = "国家")
    private String country;
    @ApiModelProperty("省份")
    private String province;
    @ApiModelProperty("城市")
    private String city;

}
